package java_learn.java_jinjie.ThreadAndException;

import java.io.FileNotFoundException;
import java.io.IOException;

/**
 * @Author: 李浩然
 * @Date: 2020/12/7 1:53 下午
 */
public class DemoTryCatch {
    public static void readFile(String fileName) throws IOException {
        if (!fileName.equals("C:\\a.txt")) {
            throw new FileNotFoundException("传递的文件路径不是C:\\a.txt");
        }
        if (!fileName.endsWith(".txt")) {
            throw new IOException("文件后缀名不对");
        }
        System.out.println("路径没有问题，读取文件");
    }

    public static void main(String[] args) {
        try {
            readFile("d:\\a.tx");
            System.out.println("资源释放1");
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
            System.out.println(e.toString());
        } finally {
            System.out.println("资源释放");
        }
        System.out.println("执行完毕");
        /**Throwable类中定义了3个异常处理的方法
         String getMessage() 返回此 throwable 的简短描述。
         String toString() 返回此 throwable 的详细消息字符串。
         void printStackTrace()  JVM打印异常对象,默认此方法,打印的异常信息是最全面的
         *
         */
    }
}
